Regulární výrazy umožňují konvertovat několik objektů, například celou průřezovou řadu IPE, jediným příkazem.
Příklad použití
Např. konverze IPE120 v programu Tekla na IPE 120 | Euronorm 19-57; ... | SZS v programu RFEM 6 by měla fungovat také pro všechny ostatní průřezy řady průřezů IPE.
Aby bylo možné provést konverzi pro celou průřezovou řadu IPE, je standardní regulární výraz sestaven následovně:
Konverze z programu Tekla do programu RFEM 6
|
Tekla
|
RFEM 6
|
regulární výraz
|
IPE(\d+)
|
IPE $1 | Euronorm 19-57; ... | SZS
|
Název průřezu
|
IPE120
|
IPE 120 | Euronorm 19-57; ... | SZS
|
Název průřezu
|
IPE300
|
IPE 300 | Euronorm 19-57; ... | SZS
|
Za výraz (\d+) lze dosadit libovolné desetinné číslo. (IPE200, IPE300,...)
Výraz $1 se vztahuje na dosazené desetinné číslo. Na následujícím obrázku je do převodní tabulky Tekla přidán regulární výraz.
Pokud použijeme dvě desetinná čísla, vztahuje se výraz $1 na první číslo a výraz $2 na druhé číslo Následující tabulka to ukazuje na příkladu převodu materiálu.
Konverze z programu Tekla do programu RFEM 6
|
Tekla
|
RFEM 6
|
regulární výraz
|
C(\d+)/(\d+)
|
C$1/$2 | EN 1992-1-1:2004/A1:2014
|
Název materiálu
|
C20/25
|
C20/25 | EN 1992-1-1:2004/A1:2014
|
Název materiálu
|
C30/37
|
C30/37 | EN 1992-1-1:2004/A1:2014
|
V tomto příspěvku si ukážeme a vysvětlíme možné problémy při zadávání regulárních výrazů.
Název průřezu 400*400 se pomocí výrazu (\d+)*(\d+) nezkonvertuje.
Hvězdička * má v regulárních výrazech zvláštní význam, a proto není interpretována jako samotný znak. Chcete-li použít hvězdičku jako samotný znak v regulárním výrazu, můžete ji zapsat se zpětným lomítkem \, a tím se zruší její zvláštní význam.
Konverze z programu Tekla do programu RFEM 6
|
Tekla
|
RFEM 6
|
regulární výraz
|
(\d+)\*(\d+)
|
R_M1 $2/$1
|
Název průřezu
|
400*400
|
R_M1 400/400
|
Název průřezu
|
150*200
|
R_M1 150/200
|
Název průřezu RHS200*100*5 nelze vyjádřit výrazem RHS(\d+)\*(\d+)\*(\d+)
Pokud použijeme několik podobných regulárních výrazů, může dojít k použití nesprávného regulárního výrazu (viz příklad na obrázku).
Pomocí znaku pro horní index ^ lze určit, že se regulární výraz použije pouze tehdy, pokud je platný na začátku názvu materiálu nebo průřezu. Výraz ^(\d+)\*(\d+) proto již není pro RHS průřez platný, protože název tohoto průřezu nezačíná číslem (jako např. 400x400).
Konverze z programu Tekla do programu RFEM 6
|
Tekla
|
RFEM 6
|
regulární výraz
|
^(\d+)\*(\d+)
|
R_M1 $2/$1
|
Název průřezu
|
400*400
|
R_M1 400/400
|
Název průřezu
|
300*300
|
R_M1 300/300
|
|
|
|
regulární výraz
|
RHS(\d+)\*(\d+)\*(\d+)
|
RRO $1x$2x$3 | EN 10219-2 | ALUKÖNIGSTAHL
|
Název průřezu
|
RHS200*100*5
|
RRO 200x100x5 | EN 10219-2 | ALUKÖNIGSTAHL
|
Název průřezu
|
RHS180*140*8
|
RRO 180x140x8 | EN 10219-2 | ALUKÖNIGSTAHL
|
Jak mohu převést materiál/průřez z programu RFEM 6 nezávisle na označení v normě?
Na rozdíl od programu RFEM 6 programy Revit a Tekla přiřazují názvy materiálů a průřezů nezávisle na normách. Pokud se tak například průřez HEA 300 z různých norem z programu RFEM 6 převede na HEA 300 v programu Revit nebo Tekla bez přiřazené normy, lze pomocí regulárního výrazu .*$ ignorovat označení normy v názvu.
Konverze z programu RFEM 6 do programu Tekla
|
RFEM 6
|
Tekla
|
regulární výraz
|
HEA (\d+).*$
|
HEA$1
|
Název průřezu
|
HEA 300 | DIN 1025-3:1994-03 | Ferona
|
HEA300
|
Název průřezu
|
HEA 300 | Euronorm 53-62; ... | SZS
|
HEA300
|
Název průřezu
|
HEA 300 | GB/T 11263-2017 | --
|
HEA300
|
Zobrazit více